Perl isn't PHP. You don't have to give your HTML form elements special names to get them to come through as an array.
Here's a complete script that demonstrates how to pass arrays via similarly named form parameters. View source to see the HTML bit when you run it. You don't have to use CGI.pm to generate your form values, but if you spend some time to pick it up you'll end up loving it.
#!/usr/bin/perl
use CGI;
my $q=CGI->new();
print $q->header();
if($q->param){
my @numbers=$q->param('numbers');
if(@numbers){
print $q->p('You submitted: '.join(', ',@numbers));
}
}
my @numbers=(1..10);
print $q->start_form().
$q->checkbox_group(-name=>'numbers',-values=>\@numbers,-linebreak=>'true').
$q->submit.
$q->end_form;